home *** CD-ROM | disk | FTP | other *** search
/ Belgian Amiga Club - ADF Collection / BS1 part 34.zip / BS1 part 34 / FredFish PD 303.adf / IceFrac / IceFrac.Docs < prev    next >
Text File  |  1990-01-08  |  10KB  |  189 lines

  1.                            ICEFRAC VER 2.1
  2.                
  3.                - A Diffusion Limited Aggregation simulator
  4.                
  5.                        (c) 1989 by Lars R. Clausen
  6.  
  7.  
  8.    About Diffusion Limited Aggregation (DLA):
  9.    
  10.    DLA is a type of fractal I first read about in a Scientific American, the
  11. number long forgotten. When I also saw it in The Beauty Of Fractal Images, I
  12. made a simple one for myself. Then FastGro came along on a Fishdisk,  and  I
  13. thought  I  had  been  outmanoeuvred.  But  when it wouldn't work, I finally
  14. finished IceFrac, adding colors and more.
  15.    The method is fairly simple:
  16.    Make a form on the screen. Let a randomly placed dot wander randomly  for
  17. a maximum time of, for example, 50 moves. If it during that time  encounters
  18. another  dot, it will be plotted down there, and another will be started. If
  19. not, it leaves without a trace, and another one starts. After a thousand  or
  20. two  has come and gone, a form like lightning or ice crystals begin to form.
  21. By varying the original form, the colors, the ways of moving and testing and
  22. more, several beautiful forms may be made.
  23.  
  24.  
  25.    About IceFrac:
  26.    
  27.    IceFrac  is  a  rather  slow,  but optionfull implementation of DLA. Upon
  28. starting, it opens a LoRes NonInterLace screen in 32 colors, with  a  single
  29. strip  in  the  top  to move it and a line in the bottom. Dots then begin to
  30. appear on it, builder higher and higher, and changing their colors along the
  31. way.
  32.  
  33.    IceFrac takes one argument: The number of BitPlanes,  by  default  5.  To
  34. change this, simply type IceFrac -P(the number you want to use). It does not
  35. support HAM or HALFBRITE modes, so the maximum number of planes is 5.
  36.  
  37.    To stop IceFrac, just press the Escape key.
  38.    
  39.    By pressing Return, you save the current  picture  as  "FracPic001",  the
  40. next  time  you do it as "FracPic002" and so on. If you want, you can make a
  41. little animation from it.
  42.  
  43.    Doubleclicking the right mouse button gives you  a  requester  with  some
  44. options, detailed below.
  45.  
  46.    If IceFrac cannot find any place to place the new dot, it will wait for a
  47. response  before  trying  again,  instead  of  using  a  lot of CPU time for
  48. nothing. That next  response  would  typically  be  a  doubleclick  for  the
  49. requester, so you can start it again.
  50.  
  51.  
  52.    About The Double Menu Request:
  53.    
  54.    From  here  the  program is controlled by various options, here described
  55. from top down:
  56.  
  57.    Move: The directions the dot can move in are shown in  these  8  gadgets.
  58. Initially,  only  the  bottom  three  are  selected, forcing the dot to move
  59. downwards all the time. Combined with the Test gadgets, this gives  quite  a
  60. lot  of  control over the form of the 'thing' created, whether you  want  it
  61. to look like ice,  lightning,  gunshots,  trees,  bacteria  or  something  I
  62. haven't yet thought of.
  63.  
  64.    Test:  This indicates where testing is done for other dots. This  says  a
  65. lot about where the form will tend to go. As with Move, only the 3 downwards
  66. gadgets are selected, ensuring that the form will go upwards.
  67.  
  68.    Border:  If this gadget, saying 'Die', is selected, any dot that contacts
  69. the border will disappear instantly, This makes the program  go  faster,  as
  70. the dots that get out there normally are too far away to reach anything. You
  71. may want to turn it off, though I can't give any example of why you should.
  72.  
  73.    Size: This is simply the X and Y size of the window. If it is made bigger
  74. than this, it will go into HiRes and/or InterLace, if ReGrow is selected. It
  75. can't get any bigger than 640x511 (640x399 for NTSC screens).
  76.  
  77.    Color  Change:  This  is the number of dots to be set before the color is
  78. changed upwards. A Color Change of -1 means you don't  want  any  change  at
  79. all. Color 0 will not be included in the colors, as it would mean absolutely
  80. no  effect  till it changed to the next one. Otherwise, the entire number of
  81. colors will be used.
  82.  
  83.    StartArea1  &  StartArea2:  These numbers show where the blocks initially
  84. displayed will be placed. They are shown as XMin  YMin  XMax  YMax, in  that
  85. order. Notice that these can be either a vertical line, a horizontal line, a
  86. full block or a single dot. Color 1 is always  used  for  these  blocks.  As
  87. RectFill()  is  used for drawing the blocks, XMin should not be greater than
  88. XMax and YMin not greater than YMax.  If XMin of StartArea2 is set to -1, it
  89. will not be displayed at all, as is the case in the start.  Note  also  that
  90. not  the  full  window  is  used.  This is done to avoid testing outside the
  91. window.  Pressing a Make gadget  will  remove  the  requester  and  let  you
  92. mousedrag  out  an  area  to use.  The placement of this box is not the size
  93. shown in the Size gadgets, rather the actual size of the window. It will  be
  94. cut  down  to  fit  the  size of the area used when ReDraw is selected. This
  95. provides an easy way to place the block in the corner of a small  area,  you
  96. just make it outside the area, then it adjusts itself.
  97.  
  98.    MaxIt: The maximum number of moves each dot can make before  disappearing
  99. is shown here. A low maxit will make the form grow faster and thinner, while
  100. a  high  maxit  slows down generation but makes a thicker form, which in the
  101. most cases is the most beautiful. The minimum MaxIt is 2.
  102.  
  103.    Margin: Margin is how the maximum number of pixels away from the  initial
  104. block  the  new  dots  will  start.  As new dots are added to the form, this
  105. border will be moved out accordingly, so as to be always Margin pixels  away
  106. from  the  outermost part of the form. The smaller the margin is, the faster
  107. the form will be made, but a small margin may cause it to go out into a  few
  108. thin  arms.  This  does  not  happen  in the initial setup, as all dots move
  109. downwards, but if started from a single dot in the middle of the screen, the
  110. form would with a low margin very quickly go in four directions  or  so,  as
  111. the outermost parts will be hit very easily. The maxmimum margin is equal to
  112. maxit, as no dot would be able to get to the form if margin was larger  than
  113. maxit and Enter On Edge was selected.
  114.  
  115.    Enter On: When Enter On Edge is selected, all new dots will be put at the
  116. maximum  distance  from the form, as dictated by Margin and Size. This means
  117. that they may have a long way to travel before finding anything, but  if  it
  118. not  selected,  spaces  within  the form will also be hit, making it totally
  119. solid and maybe a mess of colors. It normally gives the best results to  let
  120. them  enter on the edge, but a gunshot-like form I made was better the other
  121. way.
  122.  
  123.    Change Colors: This puts up Jonathan Potters practical  colorpalette  for
  124. changing the colors used. This does not nedd any explanation.
  125.  
  126.    Regrow:  This  is one of the exits from the requester. Pressing this, the
  127. screen will be cleared, matbe even changed, the  startareas  drawn  and  the
  128. generation  will  begin  according to the gadgets selected in the requester,
  129. with appropriate change in size.
  130.  
  131.    Go  On: This exit leaves the screen unchanged, but otherwise lets IceFrac
  132. use the options just set. Only the  size  of  the  area  used  will  not  be
  133. altered, as this could easily involve a closing and reopening of the screen,
  134. removing everything. 
  135.  
  136.    Cancel:  Sets  the  options  back  to  the  state they were in before the
  137. requester was brought up, and continues generating unchanged.
  138.  
  139.    
  140.    About Some Beautiful Forms:
  141.    
  142.    I have made some forms that I find kanda beautiful,  so  I  will  present
  143. them here:
  144.  
  145.    GunShot:  Let moving be only down-right,  testing  the  three  down-right
  146. directions, the color change 25 or so, the startarea a single dot  somewhere
  147. in  the  downright corner, the margin 1 and use no enter on edge. Colors may
  148. be changed to a red-yellow range. After a little generating, place the mouse
  149. at the startinpoint, and BLAM! you can see the shot.
  150.  
  151.    Lightning: As GunShot, but the movement is up, the testing is  the  three
  152. upwards  directions,  the  area  is  in the top and enter on edge is on. May
  153. require a very white color range or no change at all.
  154.  
  155.    Box: Let testing and moving be all directions,  but  use  a  very  little
  156. area,  like  50 x 50 pixels, with a single point start and enter on edge on.
  157. With a fast color change, the edge will give a cute effect.
  158.  
  159.    IceCrystal: Use maximum screen size in HiRes InterLace, a  free  movement
  160. and a single point start with a margin of 2 and enter on edge on, and
  161. be patient! After a while a blue and white icecrystal should appear. This is
  162. the one that gave the program its name, but it is rather difficult to make.
  163.  
  164.  
  165.    About Copyrights And That Sort Of Stuff:
  166.    
  167.    You may copy this program as many times as you care, and use the code for
  168. your own programs if you want, as long as:
  169.  
  170.    1)  No  money  is  taking for the copying, except for a small fee for the
  171.    disk and the time used, say a dollar or 2.
  172.    
  173.    2) I get the credit for this very program.
  174.    
  175.    3) This document is always copied along with the program.
  176.    
  177.    As  usual, I cannot take any resposibility at all for the effects of this
  178. program!
  179.    
  180.    If you like this program, please  send  a  note,  wishlists,  bugreports,
  181. homemade programs, changed versions, $$$, Amiga 3000's and Rolls Royces to:
  182.  
  183.                                    Lars R. Clausen
  184.                                    Hougårdsvej 29
  185.                                    8220 Brabrand
  186.                                    Denmark
  187.                                    
  188.                                    Fidonet nr 2:230/22.34
  189.